/**
 * Description:
 * Class Name:CollectionTest
 * Date:2022/2/25 10:45
 *
 * @author LTisme
 * @version JAVA17
 */
package 疯狂Java讲义.第8章_Java集合._8_2_Java11增强的Collection和Iterator接口;

import java.util.ArrayList;
import java.util.HashSet;

public class CollectionTest {
    public static void main(String[] args) {
        var c = new ArrayList();
        // 添加元素
        c.add("孙悟空");
        // 虽然集合里不能放基本类型，也就是非引用对象变量，但Java支持自动装箱
        c.add("6");
        System.out.println("c集合的元素个数为：" + c.size());            // 输出2
        // 删除指定元素
        c.remove("6");
        System.out.println("c集合的元素个数为：" + c.size());            // 输出1
        // 判断是否包含指定字符串
        System.out.println("c集合是否包含\"孙悟空\"字符串：" + c.contains("孙悟空"));       // 输出true
        c.add("The three body problem");
        System.out.println("c集合的元素：" + c);

        var books = new HashSet();
        books.add("The Mocking bird");
        books.add("The three body problem");
        System.out.println("c集合是否完全包含books集合？" + c.containsAll(books));         // 输出false
        // 用c集合减去books集合里的元素
        c.removeAll(books);
        System.out.println("c集合的元素：" + c);
        // 删除c集合里的所有元素
        c.clear();
        System.out.println("c集合的元素：" + c);
        // 控制books集合里只剩下c集合里也包含的元素
        books.retainAll(c);
        System.out.println("books集合的元素：" + books);
    }
}
//c集合的元素个数为：2
//c集合的元素个数为：1
//c集合是否包含"孙悟空"字符串：true
//c集合的元素：[孙悟空, The three body problem]
//c集合是否完全包含books集合？false
//c集合的元素：[孙悟空]
//c集合的元素：[]
//books集合的元素：[]
